import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
deliveries_data = pd.read_csv(r'/Users/sandeepkumar/Downloads/IPL Ball-by-Ball 2008-2020.csv')
match_data = pd.read_csv(r'/Users/sandeepkumar/Downloads/IPL Matches 2008-2020.csv')
match_data.head()
| id | city | date | player_of_match | venue | neutral_venue | team1 | team2 | toss_winner | toss_decision | winner | result | result_margin | eliminator | method | umpire1 | umpire2 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | 335982 | Bangalore | 2008-04-18 | BB McCullum | M Chinnaswamy Stadium | 0 | Royal Challengers Bangalore | Kolkata Knight Riders | Royal Challengers Bangalore | field | Kolkata Knight Riders | runs | 140.0 | N | NaN | Asad Rauf | RE Koertzen |
| 1 | 335983 | Chandigarh | 2008-04-19 | MEK Hussey | Punjab Cricket Association Stadium, Mohali | 0 | Kings XI Punjab | Chennai Super Kings | Chennai Super Kings | bat | Chennai Super Kings | runs | 33.0 | N | NaN | MR Benson | SL Shastri |
| 2 | 335984 | Delhi | 2008-04-19 | MF Maharoof | Feroz Shah Kotla | 0 | Delhi Daredevils | Rajasthan Royals | Rajasthan Royals | bat | Delhi Daredevils | wickets | 9.0 | N | NaN | Aleem Dar | GA Pratapkumar |
| 3 | 335985 | Mumbai | 2008-04-20 | MV Boucher | Wankhede Stadium | 0 | Mumbai Indians | Royal Challengers Bangalore | Mumbai Indians | bat | Royal Challengers Bangalore | wickets | 5.0 | N | NaN | SJ Davis | DJ Harper |
| 4 | 335986 | Kolkata | 2008-04-20 | DJ Hussey | Eden Gardens | 0 | Kolkata Knight Riders | Deccan Chargers | Deccan Chargers | bat | Kolkata Knight Riders | wickets | 5.0 | N | NaN | BF Bowden | K Hariharan |
match_data.tail()
| id | city | date | player_of_match | venue | neutral_venue | team1 | team2 | toss_winner | toss_decision | winner | result | result_margin | eliminator | method | umpire1 | umpire2 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 811 | 1216547 | Dubai | 2020-09-28 | AB de Villiers | Dubai International Cricket Stadium | 0 | Royal Challengers Bangalore | Mumbai Indians | Mumbai Indians | field | Royal Challengers Bangalore | tie | NaN | Y | NaN | Nitin Menon | PR Reiffel |
| 812 | 1237177 | Dubai | 2020-11-05 | JJ Bumrah | Dubai International Cricket Stadium | 0 | Mumbai Indians | Delhi Capitals | Delhi Capitals | field | Mumbai Indians | runs | 57.0 | N | NaN | CB Gaffaney | Nitin Menon |
| 813 | 1237178 | Abu Dhabi | 2020-11-06 | KS Williamson | Sheikh Zayed Stadium | 0 | Royal Challengers Bangalore | Sunrisers Hyderabad | Sunrisers Hyderabad | field | Sunrisers Hyderabad | wickets | 6.0 | N | NaN | PR Reiffel | S Ravi |
| 814 | 1237180 | Abu Dhabi | 2020-11-08 | MP Stoinis | Sheikh Zayed Stadium | 0 | Delhi Capitals | Sunrisers Hyderabad | Delhi Capitals | bat | Delhi Capitals | runs | 17.0 | N | NaN | PR Reiffel | S Ravi |
| 815 | 1237181 | Dubai | 2020-11-10 | TA Boult | Dubai International Cricket Stadium | 0 | Delhi Capitals | Mumbai Indians | Delhi Capitals | bat | Mumbai Indians | wickets | 5.0 | N | NaN | CB Gaffaney | Nitin Menon |
match_data.columns
Index(['id', 'city', 'date', 'player_of_match', 'venue', 'neutral_venue',
'team1', 'team2', 'toss_winner', 'toss_decision', 'winner', 'result',
'result_margin', 'eliminator', 'method', 'umpire1', 'umpire2'],
dtype='object')
match_data.shape
(816, 17)
type(match_data.shape)
tuple
type(match_data)
pandas.core.frame.DataFrame
match_data.shape[0]
816
match_data['city'].unique()
array(['Bangalore', 'Chandigarh', 'Delhi', 'Mumbai', 'Kolkata', 'Jaipur',
'Hyderabad', 'Chennai', 'Cape Town', 'Port Elizabeth', 'Durban',
'Centurion', 'East London', 'Johannesburg', 'Kimberley',
'Bloemfontein', 'Ahmedabad', 'Cuttack', 'Nagpur', 'Dharamsala',
'Kochi', 'Indore', 'Visakhapatnam', 'Pune', 'Raipur', 'Ranchi',
'Abu Dhabi', nan, 'Rajkot', 'Kanpur', 'Bengaluru', 'Dubai',
'Sharjah'], dtype=object)
match_data['team1'].unique()
array(['Royal Challengers Bangalore', 'Kings XI Punjab',
'Delhi Daredevils', 'Mumbai Indians', 'Kolkata Knight Riders',
'Rajasthan Royals', 'Deccan Chargers', 'Chennai Super Kings',
'Kochi Tuskers Kerala', 'Pune Warriors', 'Sunrisers Hyderabad',
'Gujarat Lions', 'Rising Pune Supergiants',
'Rising Pune Supergiant', 'Delhi Capitals'], dtype=object)
match_data['toss_winner'].value_counts()
Mumbai Indians 106 Kolkata Knight Riders 98 Chennai Super Kings 97 Royal Challengers Bangalore 87 Rajasthan Royals 87 Kings XI Punjab 85 Delhi Daredevils 80 Sunrisers Hyderabad 57 Deccan Chargers 43 Pune Warriors 20 Delhi Capitals 20 Gujarat Lions 15 Kochi Tuskers Kerala 8 Rising Pune Supergiants 7 Rising Pune Supergiant 6 Name: toss_winner, dtype: int64
match_data['toss_winner'].value_counts().index[0]
'Mumbai Indians'
match_data['player_of_match'].value_counts().index[0]
'AB de Villiers'
deliveries_data.head()
| id | inning | over | ball | batsman | non_striker | bowler | batsman_runs | extra_runs | total_runs | non_boundary | is_wicket | dismissal_kind | player_dismissed | fielder | extras_type | batting_team | bowling_team | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | 335982 | 1 | 6 | 5 | RT Ponting | BB McCullum | AA Noffke | 1 | 0 | 1 | 0 | 0 | NaN | NaN | NaN | NaN | Kolkata Knight Riders | Royal Challengers Bangalore |
| 1 | 335982 | 1 | 6 | 6 | BB McCullum | RT Ponting | AA Noffke | 1 | 0 | 1 | 0 | 0 | NaN | NaN | NaN | NaN | Kolkata Knight Riders | Royal Challengers Bangalore |
| 2 | 335982 | 1 | 7 | 1 | BB McCullum | RT Ponting | Z Khan | 0 | 0 | 0 | 0 | 0 | NaN | NaN | NaN | NaN | Kolkata Knight Riders | Royal Challengers Bangalore |
| 3 | 335982 | 1 | 7 | 2 | BB McCullum | RT Ponting | Z Khan | 1 | 0 | 1 | 0 | 0 | NaN | NaN | NaN | NaN | Kolkata Knight Riders | Royal Challengers Bangalore |
| 4 | 335982 | 1 | 7 | 3 | RT Ponting | BB McCullum | Z Khan | 1 | 0 | 1 | 0 | 0 | NaN | NaN | NaN | NaN | Kolkata Knight Riders | Royal Challengers Bangalore |
deliveries_data['batsman'].unique()
array(['RT Ponting', 'BB McCullum', 'DJ Hussey', 'Mohammad Hafeez',
'SC Ganguly', 'CL White', 'MV Boucher', 'B Akhil', 'AA Noffke',
'P Kumar', 'Z Khan', 'SB Joshi', 'W Jaffer', 'JH Kallis',
'R Dravid', 'V Kohli', 'K Goel', 'MEK Hussey', 'JR Hopes',
'SK Raina', 'JDP Oram', 'S Badrinath', 'PA Patel', 'ML Hayden',
'MS Dhoni', 'KC Sangakkara', 'Yuvraj Singh', 'SM Katich',
'IK Pathan', 'T Kohli', 'YK Pathan', 'S Dhawan', 'G Gambhir',
'SK Warne', 'D Salunkhe', 'SK Trivedi', 'V Sehwag', 'SR Watson',
'M Kaif', 'DS Lehmann', 'RA Jadeja', 'M Rawat', 'L Ronchi',
'ST Jayasuriya', 'DJ Thornely', 'RV Uthappa', 'PR Shah',
'AM Nayar', 'SM Pollock', 'Harbhajan Singh', 'S Chanderpaul',
'LRPL Taylor', 'WP Saha', 'AS Yadav', 'A Symonds', 'SB Bangar',
'WPUJC Vaas', 'RP Singh', 'AC Gilchrist', 'Y Venugopal Rao',
'VVS Laxman', 'RG Sharma', 'SB Styris', 'LR Shukla', 'PP Chawla',
'Kamran Akmal', 'DPMD Jayawardene', 'S Sohal', 'B Lee', 'WA Mota',
'Shahid Afridi', 'DJ Bravo', 'A Nehra', 'MA Khote', 'GC Smith',
'Pankaj Singh', 'S Sreesanth', 'VRV Singh', 'SS Tiwary',
'RR Sarwan', 'DS Kulkarni', 'R Vinay Kumar', 'M Kartik',
'I Sharma', 'AB Agarkar', 'AM Rahane', 'TM Srivastava',
'Shoaib Malik', 'MK Tiwary', 'KD Karthik', 'R Bhatia',
'MF Maharoof', 'VY Mahesh', 'B Chipli', 'DW Steyn', 'DB Das',
'MK Pandey', 'HH Gibbs', 'DNT Zoysa', 'D Kalyankrishna',
'SE Marsh', 'SA Asnodkar', 'BJ Hodge', 'Sohail Tanvir',
'Salman Butt', 'Umar Gul', 'AB Dinda', 'AB de Villiers',
'SP Fleming', 'S Vidyut', 'JA Morkel', 'LPC Silva', 'DB Ravi Teja',
'Misbah-ul-Haq', 'PJ Sangwan', 'YV Takawale', 'RR Raje',
'Mohammad Asif', 'GD McGrath', 'Joginder Sharma', 'MS Gony',
'M Muralitharan', 'M Ntini', 'DT Patil', 'A Kumble', 'S Anirudha',
'MM Patel', 'CK Kapugedera', 'A Chopra', 'T Taibu', 'J Arunkumar',
'PP Ojha', 'SP Goswami', 'SR Tendulkar', 'U Kaul', 'Niraj Patel',
'AD Mascarenhas', 'TM Dilshan', 'A Mishra', 'LA Pomersbach',
'Iqbal Abdulla', 'Younis Khan', 'PM Sarvesh Kumar',
'DP Vijaykumar', 'Shoaib Akhtar', 'Abdur Razzak', 'H Das',
'DR Smith', 'SD Chitnis', 'CRD Fernando', 'VS Yeligati',
'L Balaji', 'A Mukund', 'RR Powar', 'JP Duminy', 'A Flintoff',
'T Thushara', 'KP Pietersen', 'JD Ryder', 'T Henderson',
'Kamran Khan', 'RS Bopara', 'MC Henriques', 'CH Gayle',
'R Bishnoi', 'KV Sharma', 'FH Edwards', 'AS Raut', 'PC Valthaty',
'RJ Quiney', 'Yashpal Singh', 'M Manhas', 'AA Bilakhia',
'AN Ghosh', 'BAW Mendis', 'DL Vettori', 'MN van Wyk',
'RE van der Merwe', 'TL Suman', 'Shoaib Ahmed', 'GR Napier',
'KP Appanna', 'LA Carseldine', 'NV Ojha', 'SM Harwood', 'M Vijay',
'DA Warner', 'SB Jakati', 'RJ Harris', 'D du Preez', 'M Morkel',
'AD Mathews', 'SL Malinga', 'C Nanda', 'J Botha',
'Mashrafe Mortaza', 'A Singh', 'GJ Bailey', 'AB McDonald',
'Y Nagar', 'SS Shaikh', 'R Ashwin', 'Mohammad Ashraful',
'Jaskaran Singh', 'Anirudh Singh', 'CA Pujara', 'OA Shah',
'AP Tare', 'AT Rayudu', 'R Sathish', 'R McLaren',
'AA Jhunjhunwala', 'P Dogra', 'A Uniyal', 'MS Bisla', 'YA Abdulla',
'EJG Morgan', 'JM Kemp', 'S Tyagi', 'RS Gavaskar', 'SE Bond',
'S Ladda', 'DP Nannes', 'KA Pollard', 'DR Martyn', 'S Narwal',
'MJ Lumb', 'Bipul Sharma', 'AB Barath', 'FY Fazal', 'AC Voges',
'MD Mishra', 'UT Yadav', 'J Theron', 'SJ Srivastava', 'R Sharma',
'Mandeep Singh', 'KM Jadhav', 'SW Tait', 'KB Arun Karthik',
'KAJ Roach', 'PD Collingwood', 'CK Langeveldt', 'VS Malik',
'A Mithun', 'AP Dole', 'AN Ahmed', 'RS Sodhi', 'DE Bollinger',
'S Sriram', 'B Sumanth', 'C Madan', 'AG Paunikar', 'MR Marsh',
'AJ Finch', 'STR Binny', 'Harmeet Singh', 'IR Jaggi',
'DT Christian', 'MA Agarwal', 'RV Gomez', 'AUK Pathan',
'UBT Chand', 'DJ Jacobs', 'NJ Rimmington', 'Sunny Singh',
'AL Menaria', 'WD Parnell', 'JJ van der Wath', 'R Ninan',
'S Aravind', 'MS Wade', 'TD Paine', 'JEC Franklin', 'SB Wagh',
'AC Thomas', 'Shakib Al Hasan', 'DH Yagnik', 'S Randiv',
'BJ Haddin', 'NLTC Perera', 'NL McCullum', 'JE Taylor',
'J Syed Mohammad', 'RN ten Doeschate', 'TR Birt', 'AG Murtaza',
'Harpreet Singh', 'M Klinger', 'AC Blizzard', 'I Malhotra',
'L Ablish', 'CA Ingram', 'S Nadeem', 'P Parameswaran',
'CJ Ferguson', 'VR Aaron', 'AA Chavan', 'ND Doshi', 'B Kumar',
'Y Gnaneswara Rao', 'S Rana', 'BA Bhatt', 'F du Plessis',
'RE Levi', 'GJ Maxwell', 'SPD Smith', 'SA Yadav', 'MN Samuels',
'KK Cooper', 'JP Faulkner', 'HV Patel', 'DAJ Bracewell',
'DJ Harris', 'Ankit Sharma', 'SP Narine', 'GB Hogg', 'RR Bhatkal',
'CJ McKay', 'N Saini', 'DA Miller', 'Azhar Mahmood', 'P Negi',
'RJ Peterson', 'KMDN Kulasekara', 'A Ashish Reddy',
'V Pratap Singh', 'BB Samantray', 'MJ Clarke', 'Gurkeerat Singh',
'AP Majumdar', 'PA Reddy', 'K Upadhyay', 'P Awana', 'AD Russell',
'A Chandila', 'CA Lynn', 'Sunny Gupta', 'MC Juneja', 'KK Nair',
'GH Vihari', 'R Shukla', 'MDKJ Perera', 'AS Rajpoot', 'B Laughlin',
'M Vohra', 'JD Unadkat', 'Mohammed Shami', 'BMAJ Mendis',
'R Rampaul', 'CH Morris', 'SV Samson', 'SMSM Senanayake',
'BJ Rohrer', 'KL Rahul', 'Q de Kock', 'R Dhawan', 'MG Johnson',
'LJ Wright', 'IC Pandey', 'CM Gautam', 'X Thalaivan Sargunam',
'DJG Sammy', 'KW Richardson', 'MM Sharma', 'UA Birla',
'Parvez Rasool', 'Sandeep Sharma', 'S Kaul', 'Sachin Baby',
'PV Tambe', 'NM Coulter-Nile', 'CJ Anderson', 'NJ Maddinson',
'AR Patel', 'JJ Bumrah', 'JDS Neesham', 'TG Southee', 'MA Starc',
'BR Dunk', 'RR Rossouw', 'Shivam Sharma', 'YS Chahal',
'LMP Simmons', 'VH Zol', 'Imran Tahir', 'BCJ Cutting',
'BE Hendricks', 'S Gopal', 'M de Lange', 'R Tewatia', 'JO Holder',
'Karanveer Singh', 'SS Iyer', 'DJ Hooda', 'Anureet Singh',
'KS Williamson', 'SA Abbott', 'J Suchith', 'RG More', 'D Wiese',
'HH Pandya', 'SN Khan', 'MJ McClenaghan', 'DJ Muthuswami',
'PJ Cummins', 'SN Thakur', 'JC Buttler', 'CR Brathwaite',
'MP Stoinis', 'Ishan Kishan', 'C Munro', 'P Sahu', 'KH Pandya',
'AD Nath', 'MJ Guptill', 'KJ Abbott', 'TM Head', 'M Ashwin',
'NS Naik', 'RR Pant', 'SW Billings', 'KC Cariappa',
'PSP Handscomb', 'Swapnil Singh', 'J Yadav', 'UT Khawaja',
'HM Amla', 'F Behardien', 'A Zampa', 'BB Sran', 'N Rana',
'S Kaushik', 'ER Dwivedi', 'CJ Jordan', 'A Choudhary', 'TS Mills',
'BA Stokes', 'JJ Roy', 'Vishnu Vinod', 'Basil Thampi', 'CR Woakes',
'RA Tripathi', 'DL Chahar', 'V Shankar', 'Rashid Khan',
'LH Ferguson', 'RD Chahar', 'C de Grandhomme', 'AF Milne',
'S Badree', 'Mohammad Nabi', 'AJ Tye', 'K Rabada', 'Kuldeep Yadav',
'Washington Sundar', 'DM Bravo', 'AR Bawne', 'SP Jackson',
'Ankit Soni', 'TA Boult', 'E Lewis', 'MA Wood', 'RK Singh',
'DJM Short', 'K Gowtham', 'TK Curran', 'M Markande', 'B Stanlake',
'Mujeeb Ur Rahman', 'A Dananjaya', 'Shivam Mavi', 'Shubman Gill',
'Mohammed Siraj', 'H Klaasen', 'RK Bhui', 'JC Archer', 'PP Shaw',
'LE Plunkett', 'Mustafizur Rahman', 'AD Hales', 'MK Lomror',
'DR Shorey', 'MM Ali', 'M Prasidh Krishna', 'P Chopra',
'JPR Scantlebury-Searles', 'Abhishek Sharma', 'IS Sodhi',
'SO Hetmyer', 'S Dube', 'NA Saini', 'JM Bairstow', 'Rasikh Salam',
'KMA Paul', 'N Pooran', 'P Ray Barman', 'S Lamichhane',
'SM Curran', 'GC Viljoen', 'Avesh Khan', 'HF Gurney', 'SD Lad',
'AS Joseph', 'MJ Santner', 'R Parag', 'JL Denly', 'LS Livingstone',
'KK Ahmed', 'AJ Turner', 'SE Rutherford', 'Harpreet Brar',
'Y Prithvi Raj', 'P Simran Singh', 'JL Pattinson', 'A Nortje',
'T Banton', 'D Padikkal', 'YBK Jaiswal', 'RD Gaikwad',
'TU Deshpande', 'Abdul Samad', 'PK Garg', 'JR Philippe',
'Kartik Tyagi', 'CV Varun', 'KL Nagarkoti', 'I Udana',
'Ravi Bishnoi', 'Shahbaz Ahmed', 'AT Carey', 'N Jagadeesan',
'T Natarajan', 'P Dubey', 'SS Cottrell', 'Arshdeep Singh',
'DR Sams'], dtype=object)
filt = deliveries_data['batsman']=='V Kohli'
df_kohli = deliveries_data[filt]
df_kohli.columns
Index(['id', 'inning', 'over', 'ball', 'batsman', 'non_striker', 'bowler',
'batsman_runs', 'extra_runs', 'total_runs', 'non_boundary', 'is_wicket',
'dismissal_kind', 'player_dismissed', 'fielder', 'extras_type',
'batting_team', 'bowling_team'],
dtype='object')
df_kohli.head()
| id | inning | over | ball | batsman | non_striker | bowler | batsman_runs | extra_runs | total_runs | non_boundary | is_wicket | dismissal_kind | player_dismissed | fielder | extras_type | batting_team | bowling_team | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 211 | 335982 | 2 | 1 | 2 | V Kohli | W Jaffer | I Sharma | 0 | 0 | 0 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Kolkata Knight Riders |
| 212 | 335982 | 2 | 1 | 3 | V Kohli | W Jaffer | I Sharma | 0 | 4 | 4 | 0 | 0 | NaN | NaN | NaN | legbyes | Royal Challengers Bangalore | Kolkata Knight Riders |
| 213 | 335982 | 2 | 1 | 4 | V Kohli | W Jaffer | I Sharma | 1 | 0 | 1 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Kolkata Knight Riders |
| 216 | 335982 | 2 | 2 | 1 | V Kohli | W Jaffer | AB Dinda | 0 | 0 | 0 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Kolkata Knight Riders |
| 217 | 335982 | 2 | 2 | 2 | V Kohli | W Jaffer | AB Dinda | 0 | 0 | 0 | 0 | 1 | bowled | V Kohli | NaN | NaN | Royal Challengers Bangalore | Kolkata Knight Riders |
df_kohli['dismissal_kind'].value_counts()
caught 105 bowled 30 run out 15 lbw 7 stumped 3 caught and bowled 3 Name: dismissal_kind, dtype: int64
df_kohli['batsman_runs'].unique()
array([0, 1, 4, 6, 2, 3])
df_kohli['fielder'].unique()
array([nan, 'L Ronchi', 'M Rawat', 'DB Ravi Teja', 'S Sreesanth',
'SE Marsh', 'YV Takawale', 'JA Morkel', 'SB Bangar', 'S Badrinath',
'HH Gibbs', 'RS Bopara', 'TM Dilshan', 'MN van Wyk', 'PP Chawla',
'M Morkel', 'JP Duminy', 'JDP Oram', 'AC Gilchrist', 'AD Mathews',
'KA Pollard', 'PA Patel', 'A Mishra,DP Nannes', 'M Vijay',
'IK Pathan', 'A Symonds', 'B Sumanth', 'SR Watson',
'AC Voges,Kamran Khan', 'AP Tare', 'AT Rayudu', 'DJ Jacobs',
'S Anirudha', 'DA Warner', 'Harpreet Singh', 'MV Boucher',
'KD Karthik', 'R Ashwin', 'Y Nagar', 'MK Tiwary', 'F du Plessis',
'R Sharma', 'BJ Hodge', 'DW Steyn', 'SPD Smith', 'MS Gony',
'EJG Morgan', 'MS Dhoni', 'DPMD Jayawardene', 'AB Dinda',
'JP Faulkner', 'BJ Rohrer,KM Jadhav', 'Harbhajan Singh',
'AM Rahane,SV Samson', 'TG Southee', 'NV Ojha', 'CJ Anderson',
'WP Saha', 'R Bhatia', 'R Shukla,Q de Kock', 'RV Uthappa',
'DR Smith,MS Dhoni', 'DR Smith', 'SV Samson', 'SA Yadav',
'DJ Bravo', 'P Negi,MS Dhoni', 'B Kumar', 'MM Sharma', 'SS Iyer',
'AM Rahane', 'A Ashish Reddy', 'AD Russell', 'DA Miller',
'JC Buttler', 'MK Pandey', 'AJ Finch', 'MA Agarwal (sub)',
'RG Sharma', 'SS Iyer,Z Khan', 'S Nadeem', 'DJM Short', 'TA Boult',
'RA Jadeja', 'YK Pathan', 'RR Pant', 'HH Pandya', 'M Ashwin',
'Q de Kock', 'Shubman Gill', 'Mandeep Singh', 'SE Rutherford',
'LS Livingstone', 'SS Tiwary', 'KS Williamson', 'MP Stoinis',
'Ravi Bishnoi', 'R Tewatia', 'KL Rahul', 'Rashid Khan',
'SP Goswami'], dtype=object)
filt3 = df_kohli['fielder'] == 'MS Dhoni'
211 False
212 False
213 False
216 False
217 False
...
192772 False
192773 False
192774 False
192775 False
192892 False
Name: fielder, Length: 4609, dtype: bool
df_kohli['batsman_runs'].unique()
array([0, 1, 4, 6, 2, 3])
len(df_kohli[df_kohli['batsman_runs'] == 1])
1919
df_kohli[df_kohli['batsman_runs'] == 1]
| id | inning | over | ball | batsman | non_striker | bowler | batsman_runs | extra_runs | total_runs | non_boundary | is_wicket | dismissal_kind | player_dismissed | fielder | extras_type | batting_team | bowling_team | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 213 | 335982 | 2 | 1 | 4 | V Kohli | W Jaffer | I Sharma | 1 | 0 | 1 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Kolkata Knight Riders |
| 851 | 335985 | 2 | 12 | 5 | V Kohli | JH Kallis | AM Nayar | 1 | 0 | 1 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Mumbai Indians |
| 916 | 335985 | 2 | 10 | 1 | V Kohli | JH Kallis | Harbhajan Singh | 1 | 0 | 1 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Mumbai Indians |
| 919 | 335985 | 2 | 10 | 4 | V Kohli | JH Kallis | Harbhajan Singh | 1 | 0 | 1 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Mumbai Indians |
| 924 | 335985 | 2 | 11 | 3 | V Kohli | JH Kallis | ST Jayasuriya | 1 | 0 | 1 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Mumbai Indians |
| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
| 192329 | 1216547 | 1 | 9 | 3 | V Kohli | D Padikkal | KH Pandya | 1 | 0 | 1 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Mumbai Indians |
| 192335 | 1216547 | 1 | 10 | 2 | V Kohli | D Padikkal | RD Chahar | 1 | 0 | 1 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Mumbai Indians |
| 192342 | 1216547 | 1 | 11 | 3 | V Kohli | D Padikkal | JJ Bumrah | 1 | 0 | 1 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Mumbai Indians |
| 192736 | 1237178 | 1 | 0 | 2 | V Kohli | D Padikkal | Sandeep Sharma | 1 | 0 | 1 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Sunrisers Hyderabad |
| 192773 | 1237178 | 1 | 0 | 6 | V Kohli | D Padikkal | Sandeep Sharma | 1 | 0 | 1 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Sunrisers Hyderabad |
1919 rows × 18 columns
df_kohli[df_kohli['batsman_runs'] == 2]
| id | inning | over | ball | batsman | non_striker | bowler | batsman_runs | extra_runs | total_runs | non_boundary | is_wicket | dismissal_kind | player_dismissed | fielder | extras_type | batting_team | bowling_team | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2493 | 335992 | 1 | 6 | 4 | V Kohli | LRPL Taylor | SK Trivedi | 2 | 0 | 2 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Rajasthan Royals |
| 3467 | 335996 | 2 | 15 | 4 | V Kohli | MV Boucher | P Amarnath | 2 | 0 | 2 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Chennai Super Kings |
| 5780 | 336006 | 1 | 2 | 3 | V Kohli | JH Kallis | S Sreesanth | 2 | 0 | 2 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Kings XI Punjab |
| 8004 | 336016 | 1 | 0 | 4 | V Kohli | J Arunkumar | S Sreesanth | 2 | 0 | 2 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Kings XI Punjab |
| 11933 | 336034 | 1 | 7 | 6 | V Kohli | W Jaffer | PP Ojha | 2 | 0 | 2 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Deccan Chargers |
| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
| 191547 | 1216544 | 1 | 17 | 6 | V Kohli | MM Ali | DL Chahar | 2 | 0 | 2 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Chennai Super Kings |
| 191615 | 1216544 | 1 | 9 | 3 | V Kohli | AB de Villiers | Imran Tahir | 2 | 0 | 2 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Chennai Super Kings |
| 191635 | 1216544 | 1 | 12 | 5 | V Kohli | AB de Villiers | RA Jadeja | 2 | 0 | 2 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Chennai Super Kings |
| 192774 | 1237178 | 1 | 1 | 1 | V Kohli | D Padikkal | JO Holder | 2 | 0 | 2 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Sunrisers Hyderabad |
| 192892 | 1237178 | 1 | 0 | 4 | V Kohli | D Padikkal | Sandeep Sharma | 2 | 0 | 2 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Sunrisers Hyderabad |
346 rows × 18 columns
df_kohli[df_kohli['batsman_runs'] == 6]
| id | inning | over | ball | batsman | non_striker | bowler | batsman_runs | extra_runs | total_runs | non_boundary | is_wicket | dismissal_kind | player_dismissed | fielder | extras_type | batting_team | bowling_team | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 926 | 335985 | 2 | 11 | 5 | V Kohli | JH Kallis | ST Jayasuriya | 6 | 0 | 6 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Mumbai Indians |
| 2507 | 335992 | 1 | 8 | 4 | V Kohli | MV Boucher | SK Trivedi | 6 | 0 | 6 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Rajasthan Royals |
| 11937 | 336034 | 1 | 8 | 4 | V Kohli | W Jaffer | SB Bangar | 6 | 0 | 6 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Deccan Chargers |
| 11958 | 336034 | 1 | 12 | 1 | V Kohli | JH Kallis | PP Ojha | 6 | 0 | 6 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Deccan Chargers |
| 14408 | 392185 | 2 | 10 | 5 | V Kohli | R Dravid | Joginder Sharma | 6 | 0 | 6 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Chennai Super Kings |
| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
| 187042 | 1216525 | 1 | 14 | 1 | V Kohli | Washington Sundar | SM Curran | 6 | 0 | 6 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Chennai Super Kings |
| 187150 | 1216525 | 1 | 18 | 1 | V Kohli | S Dube | SN Thakur | 6 | 0 | 6 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Chennai Super Kings |
| 187168 | 1216525 | 1 | 17 | 4 | V Kohli | S Dube | SM Curran | 6 | 0 | 6 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Chennai Super Kings |
| 187171 | 1216525 | 1 | 17 | 7 | V Kohli | S Dube | SM Curran | 6 | 0 | 6 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Chennai Super Kings |
| 191538 | 1216544 | 1 | 16 | 3 | V Kohli | AB de Villiers | RA Jadeja | 6 | 0 | 6 | 0 | 0 | NaN | NaN | NaN | NaN | Royal Challengers Bangalore | Chennai Super Kings |
202 rows × 18 columns
len(df_kohli[df_kohli['batsman_runs'] == 6])*6
1212
import plotly.express as px
import plotly.graph_objs as go
from plotly.offline import init_notebook_mode, plot, iplot
values = [1919 , 692 , 39 , 2016 , 1212]
labels = [1, 2, 3 ,4, 6]
trace = go.Pie(labels= labels , values= values , hole=0.3)
data = [trace]
fig = go.Figure(data = data)
fig.show()
#Toss decision across seasons
match_data.columns
Index(['id', 'city', 'date', 'player_of_match', 'venue', 'neutral_venue',
'team1', 'team2', 'toss_winner', 'toss_decision', 'winner', 'result',
'result_margin', 'eliminator', 'method', 'umpire1', 'umpire2'],
dtype='object')
match_data['Season'] = pd.to_datetime(match_data['date']).dt.year ## extract season from "date" feature
match_data['Season'] = pd.to_datetime(match_data['date']).dt.year
match_data.columns
Index(['id', 'city', 'date', 'player_of_match', 'venue', 'neutral_venue',
'team1', 'team2', 'toss_winner', 'toss_decision', 'winner', 'result',
'result_margin', 'eliminator', 'method', 'umpire1', 'umpire2',
'Season'],
dtype='object')
match_data.groupby(['Season' , 'toss_decision']).size()
Season toss_decision
2008 bat 26
field 32
2009 bat 35
field 22
2010 bat 39
field 21
2011 bat 25
field 48
2012 bat 37
field 37
2013 bat 45
field 31
2014 bat 19
field 41
2015 bat 25
field 34
2016 bat 11
field 49
2017 bat 11
field 48
2018 bat 10
field 50
2019 bat 10
field 50
2020 bat 27
field 33
dtype: int64
type(match_data.groupby(['Season' , 'toss_decision']).size())
pandas.core.series.Series
match_data.groupby(['Season' , 'toss_decision']).size().reset_index()
| Season | toss_decision | 0 | |
|---|---|---|---|
| 0 | 2008 | bat | 26 |
| 1 | 2008 | field | 32 |
| 2 | 2009 | bat | 35 |
| 3 | 2009 | field | 22 |
| 4 | 2010 | bat | 39 |
| 5 | 2010 | field | 21 |
| 6 | 2011 | bat | 25 |
| 7 | 2011 | field | 48 |
| 8 | 2012 | bat | 37 |
| 9 | 2012 | field | 37 |
| 10 | 2013 | bat | 45 |
| 11 | 2013 | field | 31 |
| 12 | 2014 | bat | 19 |
| 13 | 2014 | field | 41 |
| 14 | 2015 | bat | 25 |
| 15 | 2015 | field | 34 |
| 16 | 2016 | bat | 11 |
| 17 | 2016 | field | 49 |
| 18 | 2017 | bat | 11 |
| 19 | 2017 | field | 48 |
| 20 | 2018 | bat | 10 |
| 21 | 2018 | field | 50 |
| 22 | 2019 | bat | 10 |
| 23 | 2019 | field | 50 |
| 24 | 2020 | bat | 27 |
| 25 | 2020 | field | 33 |
season_toss_count_df = match_data.groupby(['Season' , 'toss_decision']).size().reset_index()
season_toss_count_df = match_data.groupby(['Season' , 'toss_decision']).size().reset_index().rename(columns={0:'count'})
season_toss_count_df
| Season | toss_decision | count | |
|---|---|---|---|
| 0 | 2008 | bat | 26 |
| 1 | 2008 | field | 32 |
| 2 | 2009 | bat | 35 |
| 3 | 2009 | field | 22 |
| 4 | 2010 | bat | 39 |
| 5 | 2010 | field | 21 |
| 6 | 2011 | bat | 25 |
| 7 | 2011 | field | 48 |
| 8 | 2012 | bat | 37 |
| 9 | 2012 | field | 37 |
| 10 | 2013 | bat | 45 |
| 11 | 2013 | field | 31 |
| 12 | 2014 | bat | 19 |
| 13 | 2014 | field | 41 |
| 14 | 2015 | bat | 25 |
| 15 | 2015 | field | 34 |
| 16 | 2016 | bat | 11 |
| 17 | 2016 | field | 49 |
| 18 | 2017 | bat | 11 |
| 19 | 2017 | field | 48 |
| 20 | 2018 | bat | 10 |
| 21 | 2018 | field | 50 |
| 22 | 2019 | bat | 10 |
| 23 | 2019 | field | 50 |
| 24 | 2020 | bat | 27 |
| 25 | 2020 | field | 33 |
plt.figure(figsize=(7,4))
sns.barplot(x='Season' , y='count' , hue = 'toss_decision' , data = season_toss_count_df)
## plotting barplot of "Season" vs "count" for bat & field both ..
plt.show()
match_data.columns
Index(['id', 'city', 'date', 'player_of_match', 'venue', 'neutral_venue',
'team1', 'team2', 'toss_winner', 'toss_decision', 'winner', 'result',
'result_margin', 'eliminator', 'method', 'umpire1', 'umpire2',
'Season'],
dtype='object')
match_data.head()
| id | city | date | player_of_match | venue | neutral_venue | team1 | team2 | toss_winner | toss_decision | winner | result | result_margin | eliminator | method | umpire1 | umpire2 | Season | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | 335982 | Bangalore | 2008-04-18 | BB McCullum | M Chinnaswamy Stadium | 0 | Royal Challengers Bangalore | Kolkata Knight Riders | Royal Challengers Bangalore | field | Kolkata Knight Riders | runs | 140.0 | N | NaN | Asad Rauf | RE Koertzen | 2008 |
| 1 | 335983 | Chandigarh | 2008-04-19 | MEK Hussey | Punjab Cricket Association Stadium, Mohali | 0 | Kings XI Punjab | Chennai Super Kings | Chennai Super Kings | bat | Chennai Super Kings | runs | 33.0 | N | NaN | MR Benson | SL Shastri | 2008 |
| 2 | 335984 | Delhi | 2008-04-19 | MF Maharoof | Feroz Shah Kotla | 0 | Delhi Daredevils | Rajasthan Royals | Rajasthan Royals | bat | Delhi Daredevils | wickets | 9.0 | N | NaN | Aleem Dar | GA Pratapkumar | 2008 |
| 3 | 335985 | Mumbai | 2008-04-20 | MV Boucher | Wankhede Stadium | 0 | Mumbai Indians | Royal Challengers Bangalore | Mumbai Indians | bat | Royal Challengers Bangalore | wickets | 5.0 | N | NaN | SJ Davis | DJ Harper | 2008 |
| 4 | 335986 | Kolkata | 2008-04-20 | DJ Hussey | Eden Gardens | 0 | Kolkata Knight Riders | Deccan Chargers | Deccan Chargers | bat | Kolkata Knight Riders | wickets | 5.0 | N | NaN | BF Bowden | K Hariharan | 2008 |
match_data[['team1','team2','toss_winner','winner']].rename(columns={'winner':'Chicken_dinner'})
| team1 | team2 | toss_winner | Chicken_dinner | |
|---|---|---|---|---|
| 0 | Royal Challengers Bangalore | Kolkata Knight Riders | Royal Challengers Bangalore | Kolkata Knight Riders |
| 1 | Kings XI Punjab | Chennai Super Kings | Chennai Super Kings | Chennai Super Kings |
| 2 | Delhi Daredevils | Rajasthan Royals | Rajasthan Royals | Delhi Daredevils |
| 3 | Mumbai Indians | Royal Challengers Bangalore | Mumbai Indians | Royal Challengers Bangalore |
| 4 | Kolkata Knight Riders | Deccan Chargers | Deccan Chargers | Kolkata Knight Riders |
| ... | ... | ... | ... | ... |
| 811 | Royal Challengers Bangalore | Mumbai Indians | Mumbai Indians | Royal Challengers Bangalore |
| 812 | Mumbai Indians | Delhi Capitals | Delhi Capitals | Mumbai Indians |
| 813 | Royal Challengers Bangalore | Sunrisers Hyderabad | Sunrisers Hyderabad | Sunrisers Hyderabad |
| 814 | Delhi Capitals | Sunrisers Hyderabad | Delhi Capitals | Delhi Capitals |
| 815 | Delhi Capitals | Mumbai Indians | Delhi Capitals | Mumbai Indians |
816 rows × 4 columns
match_data[['team1','team2','toss_winner','winner']]
| team1 | team2 | toss_winner | winner | |
|---|---|---|---|---|
| 0 | Royal Challengers Bangalore | Kolkata Knight Riders | Royal Challengers Bangalore | Kolkata Knight Riders |
| 1 | Kings XI Punjab | Chennai Super Kings | Chennai Super Kings | Chennai Super Kings |
| 2 | Delhi Daredevils | Rajasthan Royals | Rajasthan Royals | Delhi Daredevils |
| 3 | Mumbai Indians | Royal Challengers Bangalore | Mumbai Indians | Royal Challengers Bangalore |
| 4 | Kolkata Knight Riders | Deccan Chargers | Deccan Chargers | Kolkata Knight Riders |
| ... | ... | ... | ... | ... |
| 811 | Royal Challengers Bangalore | Mumbai Indians | Mumbai Indians | Royal Challengers Bangalore |
| 812 | Mumbai Indians | Delhi Capitals | Delhi Capitals | Mumbai Indians |
| 813 | Royal Challengers Bangalore | Sunrisers Hyderabad | Sunrisers Hyderabad | Sunrisers Hyderabad |
| 814 | Delhi Capitals | Sunrisers Hyderabad | Delhi Capitals | Delhi Capitals |
| 815 | Delhi Capitals | Mumbai Indians | Delhi Capitals | Mumbai Indians |
816 rows × 4 columns
## if "toss_winner" equals to "match_winner" , then assign "Yes" else assign "No"
match_data['toss_win_game_win'] = np.where(match_data['toss_winner'] == match_data['winner'], 'Yes', 'No')
match_data.columns
Index(['id', 'city', 'date', 'player_of_match', 'venue', 'neutral_venue',
'team1', 'team2', 'toss_winner', 'toss_decision', 'winner', 'result',
'result_margin', 'eliminator', 'method', 'umpire1', 'umpire2', 'Season',
'toss_win_game_win'],
dtype='object')
match_data['toss_win_game_win'].unique()
array(['No', 'Yes'], dtype=object)
match_data['toss_win_game_win'].value_counts()
Yes 418 No 398 Name: toss_win_game_win, dtype: int64
match_data['toss_win_game_win'].value_counts().index
Index(['Yes', 'No'], dtype='object')
match_data['toss_win_game_win'].value_counts().values
array([418, 398])
labels = match_data['toss_win_game_win'].value_counts().index
values = match_data['toss_win_game_win'].value_counts().values
trace = go.Pie(labels= labels , values= values , hole=0.4)
data = [trace]
fig = go.Figure(data = data)
fig.update_traces(hoverinfo='label+percent' , textinfo='label+percent')
#how many times team have won the tournament
match_data.columns
Index(['id', 'city', 'date', 'player_of_match', 'venue', 'neutral_venue',
'team1', 'team2', 'toss_winner', 'toss_decision', 'winner', 'result',
'result_margin', 'eliminator', 'method', 'umpire1', 'umpire2', 'Season',
'toss_win_game_win'],
dtype='object')
match_data['Season'].unique()
array([2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018,
2019, 2020])
df_2018 = match_data[match_data['Season']==2018]
df_2018
| id | city | date | player_of_match | venue | neutral_venue | team1 | team2 | toss_winner | toss_decision | winner | result | result_margin | eliminator | method | umpire1 | umpire2 | Season | toss_win_game_win | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 636 | 1136561 | Mumbai | 2018-04-07 | DJ Bravo | Wankhede Stadium | 0 | Mumbai Indians | Chennai Super Kings | Chennai Super Kings | field | Chennai Super Kings | wickets | 1.0 | N | NaN | CB Gaffaney | A Nand Kishore | 2018 | Yes |
| 637 | 1136562 | Chandigarh | 2018-04-08 | KL Rahul | Punjab Cricket Association IS Bindra Stadium, ... | 0 | Kings XI Punjab | Delhi Daredevils | Kings XI Punjab | field | Kings XI Punjab | wickets | 6.0 | N | NaN | KN Ananthapadmanabhan | RJ Tucker | 2018 | Yes |
| 638 | 1136563 | Kolkata | 2018-04-08 | SP Narine | Eden Gardens | 0 | Kolkata Knight Riders | Royal Challengers Bangalore | Kolkata Knight Riders | field | Kolkata Knight Riders | wickets | 4.0 | N | NaN | C Shamshuddin | A Deshmukh | 2018 | Yes |
| 639 | 1136564 | Hyderabad | 2018-04-09 | S Dhawan | Rajiv Gandhi International Stadium, Uppal | 0 | Sunrisers Hyderabad | Rajasthan Royals | Sunrisers Hyderabad | field | Sunrisers Hyderabad | wickets | 9.0 | N | NaN | VA Kulkarni | NJ Llong | 2018 | Yes |
| 640 | 1136565 | Chennai | 2018-04-10 | SW Billings | MA Chidambaram Stadium, Chepauk | 0 | Chennai Super Kings | Kolkata Knight Riders | Chennai Super Kings | field | Chennai Super Kings | wickets | 5.0 | N | NaN | CB Gaffaney | AK Chaudhary | 2018 | Yes |
| 641 | 1136566 | Jaipur | 2018-04-11 | SV Samson | Sawai Mansingh Stadium | 0 | Rajasthan Royals | Delhi Daredevils | Delhi Daredevils | field | Rajasthan Royals | runs | 10.0 | N | D/L | KN Ananthapadmanabhan | Nitin Menon | 2018 | No |
| 642 | 1136567 | Hyderabad | 2018-04-12 | Rashid Khan | Rajiv Gandhi International Stadium, Uppal | 0 | Sunrisers Hyderabad | Mumbai Indians | Sunrisers Hyderabad | field | Sunrisers Hyderabad | wickets | 1.0 | N | NaN | NJ Llong | CK Nandan | 2018 | Yes |
| 643 | 1136568 | Bengaluru | 2018-04-13 | UT Yadav | M.Chinnaswamy Stadium | 0 | Royal Challengers Bangalore | Kings XI Punjab | Royal Challengers Bangalore | field | Royal Challengers Bangalore | wickets | 4.0 | N | NaN | A Deshmukh | S Ravi | 2018 | Yes |
| 644 | 1136569 | Mumbai | 2018-04-14 | JJ Roy | Wankhede Stadium | 0 | Mumbai Indians | Delhi Daredevils | Delhi Daredevils | field | Delhi Daredevils | wickets | 7.0 | N | NaN | KN Ananthapadmanabhan | Nitin Menon | 2018 | Yes |
| 645 | 1136570 | Kolkata | 2018-04-14 | B Stanlake | Eden Gardens | 0 | Kolkata Knight Riders | Sunrisers Hyderabad | Sunrisers Hyderabad | field | Sunrisers Hyderabad | wickets | 5.0 | N | NaN | AK Chaudhary | A Nand Kishore | 2018 | Yes |
| 646 | 1136571 | Bengaluru | 2018-04-15 | SV Samson | M.Chinnaswamy Stadium | 0 | Royal Challengers Bangalore | Rajasthan Royals | Royal Challengers Bangalore | field | Rajasthan Royals | runs | 19.0 | N | NaN | C Shamshuddin | S Ravi | 2018 | No |
| 647 | 1136572 | Chandigarh | 2018-04-15 | CH Gayle | Punjab Cricket Association IS Bindra Stadium, ... | 0 | Kings XI Punjab | Chennai Super Kings | Chennai Super Kings | field | Kings XI Punjab | runs | 4.0 | N | NaN | VA Kulkarni | CK Nandan | 2018 | No |
| 648 | 1136573 | Kolkata | 2018-04-16 | N Rana | Eden Gardens | 0 | Kolkata Knight Riders | Delhi Daredevils | Delhi Daredevils | field | Kolkata Knight Riders | runs | 71.0 | N | NaN | AK Chaudhary | A Nand Kishore | 2018 | No |
| 649 | 1136574 | Mumbai | 2018-04-17 | RG Sharma | Wankhede Stadium | 0 | Mumbai Indians | Royal Challengers Bangalore | Royal Challengers Bangalore | field | Mumbai Indians | runs | 46.0 | N | NaN | RJ Tucker | Nitin Menon | 2018 | No |
| 650 | 1136575 | Jaipur | 2018-04-18 | N Rana | Sawai Mansingh Stadium | 0 | Rajasthan Royals | Kolkata Knight Riders | Kolkata Knight Riders | field | Kolkata Knight Riders | wickets | 7.0 | N | NaN | A Deshmukh | S Ravi | 2018 | Yes |
| 651 | 1136576 | Chandigarh | 2018-04-19 | CH Gayle | Punjab Cricket Association IS Bindra Stadium, ... | 0 | Kings XI Punjab | Sunrisers Hyderabad | Kings XI Punjab | bat | Kings XI Punjab | runs | 15.0 | N | NaN | NJ Llong | AK Chaudhary | 2018 | Yes |
| 652 | 1136577 | Pune | 2018-04-20 | SR Watson | Maharashtra Cricket Association Stadium | 0 | Chennai Super Kings | Rajasthan Royals | Rajasthan Royals | field | Chennai Super Kings | runs | 64.0 | N | NaN | KN Ananthapadmanabhan | Nitin Menon | 2018 | No |
| 653 | 1136578 | Kolkata | 2018-04-21 | KL Rahul | Eden Gardens | 0 | Kolkata Knight Riders | Kings XI Punjab | Kings XI Punjab | field | Kings XI Punjab | wickets | 9.0 | N | D/L | C Shamshuddin | A Deshmukh | 2018 | Yes |
| 654 | 1136579 | Bengaluru | 2018-04-21 | AB de Villiers | M.Chinnaswamy Stadium | 0 | Royal Challengers Bangalore | Delhi Daredevils | Royal Challengers Bangalore | field | Royal Challengers Bangalore | wickets | 6.0 | N | NaN | CB Gaffaney | CK Nandan | 2018 | Yes |
| 655 | 1136580 | Hyderabad | 2018-04-22 | AT Rayudu | Rajiv Gandhi International Stadium, Uppal | 0 | Sunrisers Hyderabad | Chennai Super Kings | Sunrisers Hyderabad | field | Chennai Super Kings | runs | 4.0 | N | NaN | VA Kulkarni | AK Chaudhary | 2018 | No |
| 656 | 1136581 | Jaipur | 2018-04-22 | JC Archer | Sawai Mansingh Stadium | 0 | Rajasthan Royals | Mumbai Indians | Mumbai Indians | bat | Rajasthan Royals | wickets | 3.0 | N | NaN | KN Ananthapadmanabhan | RJ Tucker | 2018 | No |
| 657 | 1136582 | Delhi | 2018-04-23 | AS Rajpoot | Feroz Shah Kotla | 0 | Delhi Daredevils | Kings XI Punjab | Delhi Daredevils | field | Kings XI Punjab | runs | 4.0 | N | NaN | A Nand Kishore | CK Nandan | 2018 | No |
| 658 | 1136583 | Mumbai | 2018-04-24 | Rashid Khan | Wankhede Stadium | 0 | Mumbai Indians | Sunrisers Hyderabad | Mumbai Indians | field | Sunrisers Hyderabad | runs | 31.0 | N | NaN | C Shamshuddin | S Ravi | 2018 | No |
| 659 | 1136584 | Bengaluru | 2018-04-25 | MS Dhoni | M.Chinnaswamy Stadium | 0 | Royal Challengers Bangalore | Chennai Super Kings | Chennai Super Kings | field | Chennai Super Kings | wickets | 5.0 | N | NaN | NJ Llong | VK Sharma | 2018 | Yes |
| 660 | 1136585 | Hyderabad | 2018-04-26 | AS Rajpoot | Rajiv Gandhi International Stadium, Uppal | 0 | Sunrisers Hyderabad | Kings XI Punjab | Kings XI Punjab | field | Sunrisers Hyderabad | runs | 13.0 | N | NaN | YC Barde | CK Nandan | 2018 | No |
| 661 | 1136586 | Delhi | 2018-04-27 | SS Iyer | Feroz Shah Kotla | 0 | Delhi Daredevils | Kolkata Knight Riders | Kolkata Knight Riders | field | Delhi Daredevils | runs | 55.0 | N | NaN | C Shamshuddin | S Ravi | 2018 | No |
| 662 | 1136587 | Pune | 2018-04-28 | RG Sharma | Maharashtra Cricket Association Stadium | 0 | Chennai Super Kings | Mumbai Indians | Mumbai Indians | field | Mumbai Indians | wickets | 8.0 | N | NaN | CB Gaffaney | Nitin Menon | 2018 | Yes |
| 663 | 1136588 | Jaipur | 2018-04-29 | KS Williamson | Sawai Mansingh Stadium | 0 | Rajasthan Royals | Sunrisers Hyderabad | Sunrisers Hyderabad | bat | Sunrisers Hyderabad | runs | 11.0 | N | NaN | BNJ Oxenford | A Nand Kishore | 2018 | Yes |
| 664 | 1136589 | Bengaluru | 2018-04-29 | CA Lynn | M.Chinnaswamy Stadium | 0 | Royal Challengers Bangalore | Kolkata Knight Riders | Kolkata Knight Riders | field | Kolkata Knight Riders | wickets | 6.0 | N | NaN | NJ Llong | AK Chaudhary | 2018 | Yes |
| 665 | 1136590 | Pune | 2018-04-30 | SR Watson | Maharashtra Cricket Association Stadium | 0 | Chennai Super Kings | Delhi Daredevils | Delhi Daredevils | field | Chennai Super Kings | runs | 13.0 | N | NaN | AY Dandekar | C Shamshuddin | 2018 | No |
| 666 | 1136591 | Bengaluru | 2018-05-01 | TG Southee | M.Chinnaswamy Stadium | 0 | Royal Challengers Bangalore | Mumbai Indians | Mumbai Indians | field | Royal Challengers Bangalore | runs | 14.0 | N | NaN | M Erasmus | Nitin Menon | 2018 | No |
| 667 | 1136592 | Delhi | 2018-05-02 | RR Pant | Feroz Shah Kotla | 0 | Delhi Daredevils | Rajasthan Royals | Rajasthan Royals | field | Delhi Daredevils | runs | 4.0 | N | D/L | VK Sharma | CK Nandan | 2018 | No |
| 668 | 1136593 | Kolkata | 2018-05-03 | SP Narine | Eden Gardens | 0 | Kolkata Knight Riders | Chennai Super Kings | Kolkata Knight Riders | field | Kolkata Knight Riders | wickets | 6.0 | N | NaN | HDPK Dharmasena | A Deshmukh | 2018 | Yes |
| 669 | 1136594 | Indore | 2018-05-04 | SA Yadav | Holkar Cricket Stadium | 0 | Kings XI Punjab | Mumbai Indians | Mumbai Indians | field | Mumbai Indians | wickets | 6.0 | N | NaN | AY Dandekar | S Ravi | 2018 | Yes |
| 670 | 1136595 | Pune | 2018-05-05 | RA Jadeja | Maharashtra Cricket Association Stadium | 0 | Chennai Super Kings | Royal Challengers Bangalore | Chennai Super Kings | field | Chennai Super Kings | wickets | 6.0 | N | NaN | Nitin Menon | YC Barde | 2018 | Yes |
| 671 | 1136596 | Hyderabad | 2018-05-05 | Rashid Khan | Rajiv Gandhi International Stadium, Uppal | 0 | Sunrisers Hyderabad | Delhi Daredevils | Delhi Daredevils | bat | Sunrisers Hyderabad | wickets | 7.0 | N | NaN | BNJ Oxenford | CK Nandan | 2018 | No |
| 672 | 1136597 | Mumbai | 2018-05-06 | HH Pandya | Wankhede Stadium | 0 | Mumbai Indians | Kolkata Knight Riders | Kolkata Knight Riders | field | Mumbai Indians | runs | 13.0 | N | NaN | HDPK Dharmasena | A Deshmukh | 2018 | No |
| 673 | 1136598 | Indore | 2018-05-06 | Mujeeb Ur Rahman | Holkar Cricket Stadium | 0 | Kings XI Punjab | Rajasthan Royals | Kings XI Punjab | field | Kings XI Punjab | wickets | 6.0 | N | NaN | C Shamshuddin | S Ravi | 2018 | Yes |
| 674 | 1136599 | Hyderabad | 2018-05-07 | KS Williamson | Rajiv Gandhi International Stadium, Uppal | 0 | Sunrisers Hyderabad | Royal Challengers Bangalore | Royal Challengers Bangalore | field | Sunrisers Hyderabad | runs | 5.0 | N | NaN | BNJ Oxenford | VK Sharma | 2018 | No |
| 675 | 1136600 | Jaipur | 2018-05-08 | JC Buttler | Sawai Mansingh Stadium | 0 | Rajasthan Royals | Kings XI Punjab | Rajasthan Royals | bat | Rajasthan Royals | runs | 15.0 | N | NaN | M Erasmus | Nitin Menon | 2018 | Yes |
| 676 | 1136601 | Kolkata | 2018-05-09 | Ishan Kishan | Eden Gardens | 0 | Kolkata Knight Riders | Mumbai Indians | Kolkata Knight Riders | field | Mumbai Indians | runs | 102.0 | N | NaN | KN Ananthapadmanabhan | AK Chaudhary | 2018 | No |
| 677 | 1136602 | Delhi | 2018-05-10 | S Dhawan | Feroz Shah Kotla | 0 | Delhi Daredevils | Sunrisers Hyderabad | Delhi Daredevils | bat | Sunrisers Hyderabad | wickets | 9.0 | N | NaN | AY Dandekar | C Shamshuddin | 2018 | No |
| 678 | 1136603 | Jaipur | 2018-05-11 | JC Buttler | Sawai Mansingh Stadium | 0 | Rajasthan Royals | Chennai Super Kings | Chennai Super Kings | bat | Rajasthan Royals | wickets | 4.0 | N | NaN | M Erasmus | YC Barde | 2018 | No |
| 679 | 1136604 | Indore | 2018-05-12 | SP Narine | Holkar Cricket Stadium | 0 | Kings XI Punjab | Kolkata Knight Riders | Kings XI Punjab | field | Kolkata Knight Riders | runs | 31.0 | N | NaN | VK Sharma | CK Nandan | 2018 | No |
| 680 | 1136605 | Delhi | 2018-05-12 | AB de Villiers | Feroz Shah Kotla | 0 | Delhi Daredevils | Royal Challengers Bangalore | Royal Challengers Bangalore | field | Royal Challengers Bangalore | wickets | 5.0 | N | NaN | KN Ananthapadmanabhan | HDPK Dharmasena | 2018 | Yes |
| 681 | 1136606 | Pune | 2018-05-13 | AT Rayudu | Maharashtra Cricket Association Stadium | 0 | Chennai Super Kings | Sunrisers Hyderabad | Chennai Super Kings | field | Chennai Super Kings | wickets | 8.0 | N | NaN | M Erasmus | YC Barde | 2018 | Yes |
| 682 | 1136607 | Mumbai | 2018-05-13 | JC Buttler | Wankhede Stadium | 0 | Mumbai Indians | Rajasthan Royals | Rajasthan Royals | field | Rajasthan Royals | wickets | 7.0 | N | NaN | Nitin Menon | S Ravi | 2018 | Yes |
| 683 | 1136608 | Indore | 2018-05-14 | UT Yadav | Holkar Cricket Stadium | 0 | Kings XI Punjab | Royal Challengers Bangalore | Royal Challengers Bangalore | field | Royal Challengers Bangalore | wickets | 10.0 | N | NaN | BNJ Oxenford | VK Sharma | 2018 | Yes |
| 684 | 1136609 | Kolkata | 2018-05-15 | Kuldeep Yadav | Eden Gardens | 0 | Kolkata Knight Riders | Rajasthan Royals | Kolkata Knight Riders | field | Kolkata Knight Riders | wickets | 6.0 | N | NaN | HDPK Dharmasena | AK Chaudhary | 2018 | Yes |
| 685 | 1136610 | Mumbai | 2018-05-16 | JJ Bumrah | Wankhede Stadium | 0 | Mumbai Indians | Kings XI Punjab | Kings XI Punjab | field | Mumbai Indians | runs | 3.0 | N | NaN | M Erasmus | Nitin Menon | 2018 | No |
| 686 | 1136611 | Bengaluru | 2018-05-17 | AB de Villiers | M.Chinnaswamy Stadium | 0 | Royal Challengers Bangalore | Sunrisers Hyderabad | Sunrisers Hyderabad | field | Royal Challengers Bangalore | runs | 14.0 | N | NaN | AY Dandekar | S Ravi | 2018 | No |
| 687 | 1136612 | Delhi | 2018-05-18 | HV Patel | Feroz Shah Kotla | 0 | Delhi Daredevils | Chennai Super Kings | Chennai Super Kings | field | Delhi Daredevils | runs | 34.0 | N | NaN | VA Kulkarni | HDPK Dharmasena | 2018 | No |
| 688 | 1136613 | Jaipur | 2018-05-19 | S Gopal | Sawai Mansingh Stadium | 0 | Rajasthan Royals | Royal Challengers Bangalore | Rajasthan Royals | bat | Rajasthan Royals | runs | 30.0 | N | NaN | BNJ Oxenford | VK Sharma | 2018 | Yes |
| 689 | 1136614 | Hyderabad | 2018-05-19 | CA Lynn | Rajiv Gandhi International Stadium, Uppal | 0 | Sunrisers Hyderabad | Kolkata Knight Riders | Sunrisers Hyderabad | bat | Kolkata Knight Riders | wickets | 5.0 | N | NaN | AK Chaudhary | S Ravi | 2018 | No |
| 690 | 1136615 | Delhi | 2018-05-20 | A Mishra | Feroz Shah Kotla | 0 | Delhi Daredevils | Mumbai Indians | Delhi Daredevils | bat | Delhi Daredevils | runs | 11.0 | N | NaN | HDPK Dharmasena | CK Nandan | 2018 | Yes |
| 691 | 1136616 | Pune | 2018-05-20 | L Ngidi | Maharashtra Cricket Association Stadium | 0 | Chennai Super Kings | Kings XI Punjab | Chennai Super Kings | field | Chennai Super Kings | wickets | 5.0 | N | NaN | Nitin Menon | YC Barde | 2018 | Yes |
| 692 | 1136617 | Mumbai | 2018-05-22 | F du Plessis | Wankhede Stadium | 0 | Sunrisers Hyderabad | Chennai Super Kings | Chennai Super Kings | field | Chennai Super Kings | wickets | 2.0 | N | NaN | C Shamshuddin | M Erasmus | 2018 | Yes |
| 693 | 1136618 | Kolkata | 2018-05-23 | AD Russell | Eden Gardens | 0 | Kolkata Knight Riders | Rajasthan Royals | Rajasthan Royals | field | Kolkata Knight Riders | runs | 25.0 | N | NaN | AK Chaudhary | Nitin Menon | 2018 | No |
| 694 | 1136619 | Kolkata | 2018-05-25 | Rashid Khan | Eden Gardens | 0 | Kolkata Knight Riders | Sunrisers Hyderabad | Kolkata Knight Riders | field | Sunrisers Hyderabad | runs | 14.0 | N | NaN | HDPK Dharmasena | Nitin Menon | 2018 | No |
| 695 | 1136620 | Mumbai | 2018-05-27 | SR Watson | Wankhede Stadium | 0 | Chennai Super Kings | Sunrisers Hyderabad | Chennai Super Kings | field | Chennai Super Kings | wickets | 8.0 | N | NaN | M Erasmus | S Ravi | 2018 | Yes |
df_2018['winner'].tail(1).values[0]
'Chennai Super Kings'
# winner of every season
winners_team = {}
for year in sorted(match_data['Season'].unique()):
current_year_df = match_data[match_data['Season']==year]
winners_team[year] = current_year_df['winner'].tail(1).values[0]
winners_team
{2008: 'Rajasthan Royals',
2009: 'Deccan Chargers',
2010: 'Chennai Super Kings',
2011: 'Chennai Super Kings',
2012: 'Kolkata Knight Riders',
2013: 'Mumbai Indians',
2014: 'Kolkata Knight Riders',
2015: 'Mumbai Indians',
2016: 'Sunrisers Hyderabad',
2017: 'Mumbai Indians',
2018: 'Chennai Super Kings',
2019: 'Mumbai Indians',
2020: 'Mumbai Indians'}
winners_team.values()
dict_values(['Rajasthan Royals', 'Deccan Chargers', 'Chennai Super Kings', 'Chennai Super Kings', 'Kolkata Knight Riders', 'Mumbai Indians', 'Kolkata Knight Riders', 'Mumbai Indians', 'Sunrisers Hyderabad', 'Mumbai Indians', 'Chennai Super Kings', 'Mumbai Indians', 'Mumbai Indians'])
from collections import Counter
Counter(winners_team.values())
Counter({'Rajasthan Royals': 1,
'Delhi Daredevils': 1,
'Kolkata Knight Riders': 1,
'Mumbai Indians': 5,
'Sunrisers Hyderabad': 1,
'Royal Challengers Bangalore': 3,
'Chennai Super Kings': 1})
match_data.columns
Index(['id', 'city', 'date', 'player_of_match', 'venue', 'neutral_venue',
'team1', 'team2', 'toss_winner', 'toss_decision', 'winner', 'result',
'result_margin', 'eliminator', 'method', 'umpire1', 'umpire2', 'Season',
'toss_win_game_win'],
dtype='object')
match_data.head()
| id | city | date | player_of_match | venue | neutral_venue | team1 | team2 | toss_winner | toss_decision | winner | result | result_margin | eliminator | method | umpire1 | umpire2 | Season | toss_win_game_win | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | 335982 | Bangalore | 2008-04-18 | BB McCullum | M Chinnaswamy Stadium | 0 | Royal Challengers Bangalore | Kolkata Knight Riders | Royal Challengers Bangalore | field | Kolkata Knight Riders | runs | 140.0 | N | NaN | Asad Rauf | RE Koertzen | 2008 | No |
| 1 | 335983 | Chandigarh | 2008-04-19 | MEK Hussey | Punjab Cricket Association Stadium, Mohali | 0 | Kings XI Punjab | Chennai Super Kings | Chennai Super Kings | bat | Chennai Super Kings | runs | 33.0 | N | NaN | MR Benson | SL Shastri | 2008 | Yes |
| 2 | 335984 | Delhi | 2008-04-19 | MF Maharoof | Feroz Shah Kotla | 0 | Delhi Daredevils | Rajasthan Royals | Rajasthan Royals | bat | Delhi Daredevils | wickets | 9.0 | N | NaN | Aleem Dar | GA Pratapkumar | 2008 | No |
| 3 | 335985 | Mumbai | 2008-04-20 | MV Boucher | Wankhede Stadium | 0 | Mumbai Indians | Royal Challengers Bangalore | Mumbai Indians | bat | Royal Challengers Bangalore | wickets | 5.0 | N | NaN | SJ Davis | DJ Harper | 2008 | No |
| 4 | 335986 | Kolkata | 2008-04-20 | DJ Hussey | Eden Gardens | 0 | Kolkata Knight Riders | Deccan Chargers | Deccan Chargers | bat | Kolkata Knight Riders | wickets | 5.0 | N | NaN | BF Bowden | K Hariharan | 2008 | No |
# most number of wins
match_data[['team1','team2']]
| team1 | team2 | |
|---|---|---|
| 0 | Royal Challengers Bangalore | Kolkata Knight Riders |
| 1 | Kings XI Punjab | Chennai Super Kings |
| 2 | Delhi Daredevils | Rajasthan Royals |
| 3 | Mumbai Indians | Royal Challengers Bangalore |
| 4 | Kolkata Knight Riders | Deccan Chargers |
| ... | ... | ... |
| 811 | Royal Challengers Bangalore | Mumbai Indians |
| 812 | Mumbai Indians | Delhi Capitals |
| 813 | Royal Challengers Bangalore | Sunrisers Hyderabad |
| 814 | Delhi Capitals | Sunrisers Hyderabad |
| 815 | Delhi Capitals | Mumbai Indians |
816 rows × 2 columns
match_data['team1'].value_counts()
Royal Challengers Bangalore 108 Mumbai Indians 97 Kolkata Knight Riders 95 Chennai Super Kings 94 Kings XI Punjab 92 Delhi Daredevils 83 Rajasthan Royals 70 Sunrisers Hyderabad 59 Deccan Chargers 39 Pune Warriors 23 Delhi Capitals 19 Gujarat Lions 16 Kochi Tuskers Kerala 7 Rising Pune Supergiants 7 Rising Pune Supergiant 7 Name: team1, dtype: int64
match_data['team2'].value_counts()
Mumbai Indians 106 Kings XI Punjab 98 Kolkata Knight Riders 97 Rajasthan Royals 91 Royal Challengers Bangalore 87 Chennai Super Kings 84 Delhi Daredevils 78 Sunrisers Hyderabad 65 Deccan Chargers 36 Pune Warriors 23 Gujarat Lions 14 Delhi Capitals 14 Rising Pune Supergiant 9 Kochi Tuskers Kerala 7 Rising Pune Supergiants 7 Name: team2, dtype: int64
match_data['team1'].value_counts() + match_data['team2'].value_counts()
Chennai Super Kings 178 Deccan Chargers 75 Delhi Capitals 33 Delhi Daredevils 161 Gujarat Lions 30 Kings XI Punjab 190 Kochi Tuskers Kerala 14 Kolkata Knight Riders 192 Mumbai Indians 203 Pune Warriors 46 Rajasthan Royals 161 Rising Pune Supergiant 16 Rising Pune Supergiants 14 Royal Challengers Bangalore 195 Sunrisers Hyderabad 124 dtype: int64
matches_played = match_data['team1'].value_counts() + match_data['team2'].value_counts()
matches_played
Chennai Super Kings 178 Deccan Chargers 75 Delhi Capitals 33 Delhi Daredevils 161 Gujarat Lions 30 Kings XI Punjab 190 Kochi Tuskers Kerala 14 Kolkata Knight Riders 192 Mumbai Indians 203 Pune Warriors 46 Rajasthan Royals 161 Rising Pune Supergiant 16 Rising Pune Supergiants 14 Royal Challengers Bangalore 195 Sunrisers Hyderabad 124 dtype: int64
type(matches_played)
pandas.core.series.Series
matches_played.to_frame().reset_index()
| index | 0 | |
|---|---|---|
| 0 | Chennai Super Kings | 178 |
| 1 | Deccan Chargers | 75 |
| 2 | Delhi Capitals | 33 |
| 3 | Delhi Daredevils | 161 |
| 4 | Gujarat Lions | 30 |
| 5 | Kings XI Punjab | 190 |
| 6 | Kochi Tuskers Kerala | 14 |
| 7 | Kolkata Knight Riders | 192 |
| 8 | Mumbai Indians | 203 |
| 9 | Pune Warriors | 46 |
| 10 | Rajasthan Royals | 161 |
| 11 | Rising Pune Supergiant | 16 |
| 12 | Rising Pune Supergiants | 14 |
| 13 | Royal Challengers Bangalore | 195 |
| 14 | Sunrisers Hyderabad | 124 |
matches_played_df = matches_played.to_frame().reset_index()
matches_played_df.columns=['Team_name','Matches_played']
matches_played_df
| Team_name | Matches_played | |
|---|---|---|
| 0 | Chennai Super Kings | 178 |
| 1 | Deccan Chargers | 75 |
| 2 | Delhi Capitals | 33 |
| 3 | Delhi Daredevils | 161 |
| 4 | Gujarat Lions | 30 |
| 5 | Kings XI Punjab | 190 |
| 6 | Kochi Tuskers Kerala | 14 |
| 7 | Kolkata Knight Riders | 192 |
| 8 | Mumbai Indians | 203 |
| 9 | Pune Warriors | 46 |
| 10 | Rajasthan Royals | 161 |
| 11 | Rising Pune Supergiant | 16 |
| 12 | Rising Pune Supergiants | 14 |
| 13 | Royal Challengers Bangalore | 195 |
| 14 | Sunrisers Hyderabad | 124 |
# which team wins more matches
pd.DataFrame(match_data['winner'].value_counts()).reset_index()
| index | winner | |
|---|---|---|
| 0 | Mumbai Indians | 120 |
| 1 | Chennai Super Kings | 106 |
| 2 | Kolkata Knight Riders | 99 |
| 3 | Royal Challengers Bangalore | 91 |
| 4 | Kings XI Punjab | 88 |
| 5 | Rajasthan Royals | 81 |
| 6 | Delhi Daredevils | 67 |
| 7 | Sunrisers Hyderabad | 66 |
| 8 | Deccan Chargers | 29 |
| 9 | Delhi Capitals | 19 |
| 10 | Gujarat Lions | 13 |
| 11 | Pune Warriors | 12 |
| 12 | Rising Pune Supergiant | 10 |
| 13 | Kochi Tuskers Kerala | 6 |
| 14 | Rising Pune Supergiants | 5 |
wins = pd.DataFrame(match_data['winner'].value_counts()).reset_index()
wins.columns = ['Team_name','Wins']
wins
| Team_name | Wins | |
|---|---|---|
| 0 | Mumbai Indians | 120 |
| 1 | Chennai Super Kings | 106 |
| 2 | Kolkata Knight Riders | 99 |
| 3 | Royal Challengers Bangalore | 91 |
| 4 | Kings XI Punjab | 88 |
| 5 | Rajasthan Royals | 81 |
| 6 | Delhi Daredevils | 67 |
| 7 | Sunrisers Hyderabad | 66 |
| 8 | Deccan Chargers | 29 |
| 9 | Delhi Capitals | 19 |
| 10 | Gujarat Lions | 13 |
| 11 | Pune Warriors | 12 |
| 12 | Rising Pune Supergiant | 10 |
| 13 | Kochi Tuskers Kerala | 6 |
| 14 | Rising Pune Supergiants | 5 |
played = matches_played_df.merge(wins, on='Team_name',how='inner') #merged 2 tables
played
| Team_name | Matches_played | Wins | |
|---|---|---|---|
| 0 | Chennai Super Kings | 178 | 106 |
| 1 | Deccan Chargers | 75 | 29 |
| 2 | Delhi Capitals | 33 | 19 |
| 3 | Delhi Daredevils | 161 | 67 |
| 4 | Gujarat Lions | 30 | 13 |
| 5 | Kings XI Punjab | 190 | 88 |
| 6 | Kochi Tuskers Kerala | 14 | 6 |
| 7 | Kolkata Knight Riders | 192 | 99 |
| 8 | Mumbai Indians | 203 | 120 |
| 9 | Pune Warriors | 46 | 12 |
| 10 | Rajasthan Royals | 161 | 81 |
| 11 | Rising Pune Supergiant | 16 | 10 |
| 12 | Rising Pune Supergiants | 14 | 5 |
| 13 | Royal Challengers Bangalore | 195 | 91 |
| 14 | Sunrisers Hyderabad | 124 | 66 |
trace1 = go.Bar(
x = played['Team_name'] ,
y = played['Matches_played'] ,
name = 'Total Matches'
)
trace2 = go.Bar(
x = played['Team_name'] ,
y = played['Wins'] ,
name = 'Matches won'
)
data = [trace1 , trace2]
iplot(data)